package com.itheima.easy.mapper;

import com.github.pagehelper.Page;
import com.itheima.easy.entity.FundFlow;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;


/**
 * 资金流水Mapper
 */
@Mapper
public interface FundFlowMapper {
    /**
     * 根据主键删除资金流水
     * @param id 主键
     * @return 删除结果
     */
    int deleteByPrimaryKey(Long id);

    /**
     * 插入资金流水
     * @param fundFlow 资金流水
     * @return 插入结果
     */
    int insert(FundFlow fundFlow);

    /**
     * 选择性插入资金流水
     * @param fundFlow 资金流水
     * @return 插入结果
     */
    int insertSelective(FundFlow fundFlow);

    /**
     * 根据主键选择资金流水
     * @param id 主键
     * @return 资金流水
     */
    FundFlow selectByPrimaryKey(Long id);

    /**
     * 选择性更新资金流水
     * @param fundFlow 资金流水
     * @return 更新结果
     */
    int updateByPrimaryKeySelective(FundFlow fundFlow);

    /**
     * 更新资金流水
     * @param fundFlow 资金流水
     * @return 更新结果
     */
    int updateByPrimaryKey(FundFlow fundFlow);

    /**
     * 分页查询资金流水
     *
     * @param bedNo       床位号
     * @param elderName   老人姓名
     * @param direction   资金流向
     * @param balanceType 资金类型
     * @return 分页结果
     */
    Page<FundFlow> page(@Param("bedNo") String bedNo, @Param("elderName") String elderName, @Param("fundDirection")Integer direction, @Param("balanceType")Integer balanceType);
}
